Multli-spectral image compression with bounded loss

ABSTRACT

A system and method for generating bounded-loss color transformations employed in the compression and decompression of multi-spectral images is provided. The bounded-loss color space transformations provide transformations from a first color space to a second color space and back to the first color space with bounded loss or error. The bounded loss or error allows for the near lossless compression and reconstruction of multi-spectral images transformed from a first color space to a second color space and ultimately back to the first color space.

FIELD OF THE INVENTION

[0001] The invention relates generally to the compression of digitalimages, more particularly, to methods for compressing multi-spectralimages in different spectral spaces and transforming images from onespectral space to another with bounded loss.

BACKGROUND OF THE INVENTION

[0002] A multi-spectral image is a collection of two or more monochromeimages of the same scene. Multi-spectral images can be described in anyone of a plurality of known spectral or color spaces. For example, onewell-known multi-spectral image is an RGB color image. An RGB colorimage consists of a red, a green, and a blue component and, thus, theimage is said to be described in RGB spectral space. Other spectralspaces (sometimes hereinafter referred as color space(s)) include theCIE (Commission Internationale de L'Eclairage) L* a* b*, CIE XYZ, CIE L*u* v*, CIE YUV, CMY (Cyan, Magenta, Yellow), CMYK (Cyan, Magenta,Yellow, blacK), CCIR (Comite Consultatif International desRadiocommunications) 601 YCbCr, YIQ, HIS, and HSV spectral spaces. SeeTelevision Engineering Handbook, Featuring HDTV Systems, Revised Editionby K. Blair Benson, revised by Jerry C. Whitaker (McGraw-Hill, 1992) formore information on color spaces.

[0003] Digital multi-spectral images, as well as all digital images, arerepresented by an array of pixels. Each pixel of a digitalmulti-spectral image is defined by numerical components that representthe color of the pixel. For example, if a digital multi-spectral imageis described in RGB spectral space, each pixel of the image is definedby three numerical values representing the colors of red, green, andblue.

[0004] One of the most common ways of generating a digitalmulti-spectral image in RGB spectral space is via a color scanner thatis in communication with a computer system. The color scanner typicallyacquires the digital image by scanning a source (e.g., a photograph)with sensors sensitive to three color wavelengths: red, green, and blue.Upon completion of the scan, a digital multi-spectral image of thesource is generated in RGB spectral space from the acquired data and canbe displayed on a computer monitor or other display device.

[0005] Because digital images, and multi-spectral digital images inparticular, are described by large amounts of data (e.g., in RGBspectral space, each pixel is described by three numerical values)various compression techniques have been developed to compress the imagedata to provide for the efficient storage, access and transmission ofthe digital image.

[0006] On a general level, data compression entails the coding oforiginal data into secondary data, from which, the original data canagain be derived. Generally, the secondary or coded data, will bequantitatively less than the original data. Data compression falls intotwo general categories: lossy and lossless. In a lossy system, data iscompressed with the knowledge and foresight that the reconstructed datawill not be an identical replica of the original data, but only a closeapproximation. Conversely, a lossless system is one that produces anexact replica of the original data from the compressed data. Onewell-known compression technique is defined by the JPEG (JointPhotographic Experts Group) standard. A more recent JPEG standard forthe lossless and near-lossless compression of images called JPEG-LS. Formore information on JPEG-LS, see Information Technology—Lossless andNear-Lossless Compression of Continuous-Tone Still Images, ISO/IEC CD14495:1997(E) March 1997 Other well-known compression standards alsoexist, such as JBIG and GIF.

[0007] Lossy compression of image data is generally acceptable becauseit is known that the human eye perceives small changes in color lessaccurately than small changes in brightness. Accordingly, small lossesin digital image information that impacts color data caused by lossycompression and decompression are acceptable. Furthermore, displaydevices such as computer monitors and televisions are inherently lossyin that they cannot display all of the information contained in an imageand therefore small losses of image information are difficult toperceive on such lossy devices. Moreover, lossy compression anddecompression techniques offer superior compression ratios compared tolossless compression and decompression techniques.

[0008] However, other devices such as digital printers, and digitalcolor printers in particular, are far less tolerant of lossy imageinformation. To compound this problem, most digital color printersrequire image information in the CMYK spectral space. Thus, an imagethat is described in RGB spectral space must be transformed into CMYKspectral space before the digital color printer can print it.

[0009] In addition to scanning in the RGB color space and printing inthe CMYK color space, image compression is often done in a third colorspace. Most JPEG images are compressed in the YCbCr color space. ForMPEG-1 this is the only allowed color space. The luminance component (Y)is compressed with better quality than the color components Cb and Crsince the human visual system is more forgiving of loss in these colorcomponents. However, the transformation from RGB to YCbCr and back toRGB (or on to CMY) is inherently lossy.

[0010] Accordingly, given a lossy image compression and decompressiontechnique and a lossy spectral space transformation(s), digitalmulti-spectral image information may be significantly lost from the timethe image is first acquired to the time it is, for example, printed on adigital color printer. The result is often a color image which islacking in quality as compared to the original image. Hence, a methodfor compressing multi-spectral digital images which does not suffer fromthis and other disadvantages is desired.

SUMMARY OF THE INVENTION

[0011] According to the present invention, a computer-implemented methodfor compressing a digital multi-spectral image represented by a firstcolor space is provided. The method includes the steps of: transforminga first set of first color space components to a plurality of secondcolor space components; compressing the second color space components;and reconstructing and transforming the compressed second color spacecomponents into a second set of first color space components such thatthe difference between each of the first set of first color spacecomponents and the second set of first color space components is boundby a predetermined range of values.

[0012] It is therefore an advantage of this invention to provide amethod for compressing and reconstructing multi-spectral images withbounded losses.

BRIEF DESCRIPTION OF THE DRAWINGS

[0013] In the accompanying drawings which are incorporated in andconstitute a part of the specification, embodiments of the invention areillustrated, which, together with a general description of the inventiongiven above, and the detailed description given below, serve to examplethe principles of this invention.

[0014]FIG. 1 is a data flow block diagram of a first embodiment of thepresent invention having compression in two color spaces with one colorspace transformation;

[0015]FIG. 2 is a data flow block diagram of a second embodiment of thepresent invention having compression in three color spaces with twocolor space transformations;

[0016]FIG. 3 is a data flow block diagram of a third embodiment of thepresent invention having compression in two color spaces with one colorspace transformation and its inverse transformation;

[0017]FIG. 4 is a block diagram of an RGB color space to Y′Cb′Cr′ colorspace bounded-loss transformer;

[0018]FIG. 5 is a block diagram of a Y′Cb′Cr′ color space to RGB colorspace bounded-loss transformer;

[0019]FIG. 6 is a block diagram of an RGB color space to C′M′Y′ colorspace bounded-loss transformer;

[0020]FIG. 7 is a block diagram of a C′M′Y′ color space to RGB colorspace bounded-loss transformer;

[0021]FIG. 8 is a block diagram of a C′M′Y′ color space to traditionalCMY color space transformer; and

[0022]FIG. 9 is block diagram of a system incorporating bounded-losscolor space transformation.

DETAILED DESCRIPTION OF ILLUSTRATED EMBODIMENTS

[0023] Referring now to the drawings, three embodiments of the presentinvention will now be described. The first and third illustratedembodiments employ the compression of a digital multi-spectral image intwo spectral or color spaces. The second illustrated embodiment employsthe compression of a digital multi-spectral image in two spectral orcolor spaces with three spectral or color transformations. In eachembodiment, compressed image data in at least two different spectral orcolor spaces is produced. Additionally, each of the embodiments isillustrated with two components of the spectral space (i.e., Z, Y and A,B) for simplicity. Though the illustrated embodiments are described withregard to only two spectral space components, it should be understoodthat the discussions are equally applicable to all of the components ofa spectral or color space (e.g., third, fourth, fifth, etc.) Moreover,hereinafter the reference to a spectral or color space transformationrefers to the process of transforming multi-spectral image data from afirst color space to a second color space, which may in itself beperformed more than once on different data. Hence an embodiment mayemploy a single color space transformation more than once, as is thecase when two or more sets of data are subject to the same colortransformation, but will still be referred to as employing a singlecolor-space transformation. Accordingly, an embodiment may also employtwo or more color space transformations (i.e., color space 1 to colorspace 2; color space 2 to color space 3; etc.) as part of itscompression/decompression technique. The present discussion will nowfocus on each of the embodiments.

[0024] First Embodiment:

[0025] Two Color Spaces; One Color Space Transformation.

[0026] Illustrated in FIG. 1 is a data flow block diagram illustratingthe functions necessary to compress a multi-spectral image defined by asingle color space into compressed image data representing two colorspaces and accomplished with one color space transformation.Specifically, color space 1 components (Z and Y) of a multi-spectralimage are input into an encoder 102 for data compression. Color space 1may be any color space, such as RGB color space, for example. Datacompression and decompression may be by any known method such as JPEG,GIF, etc., however JPEG baseline compression/decompression is preferred.JPEG baseline compression/decompression provides for the encoding of animage via a top-to-bottom scan. For more information on JPEG, seeInformation Technology—Digital Compression and Coding of Continuous-ToneStill Images—Part 1: Requirements and Guidelines, ITU-T RecommendationT.81 (1992) |ISO/IEC 10918-1:1993. Alternatively, proprietarycompression/decompression techniques may also be employed.

[0027] The encoder 102 outputs compressed color space 1 data to twopaths. One path of compressed color space 1 data is input into outputfunction 116 for incorporation into a final color space 1 and 2compressed data stream. A second path of compressed color space 1 datais input into a decoder 104 to generate reconstructed color space 1components (Z′ and Y′). Since the compression/reconstruction performedby encoder 102 and decoder 104 is lossy, in the case of a lossycompression/decompression technique, reconstructed color space 1components (Z′ and Y′) are not identical to the originally compressedcolor space 1 components (Z and Y). The encoder 102 and decoder 104 arepreferably included within a primary encoder 105 since the process ofencoding can include the sub-process of reconstructing the encoded data.This reconstruction is performed because the encoder must be privy tothe decoder's decompression behavior.

[0028] The reconstructed color space 1 components (Z′ and Y′) are outputfrom decoder 104 and input into color space 1 to color space 2transformer 106B to generate a first set of color space 2 components.Color space 1 to color space 2 transformer 106B, as well as all othercolor space transformers hereinafter described, is preferably softwarelogic which incorporates conventional color space transformationalgorithm. Alternatively, hardware logic incorporating the color spacetransformation algorithms may also be employed. Conventional color spacetransformation algorithms are well-known. In the present embodiment,color space 1 may be RGB color space and color space 2 may be YCbCrcolor space. Other color space combinations are also possible.

[0029] The output of color space 1 to color space 2 transformer 106Bincludes the output of each component of color space 2 that is generatedfrom reconstructed color space 1 components (Z′ and Y′). The illustratedembodiment shows only two outputs for clarity. Just as the reconstructedcolor space 1 components (Z′ and Y′) were transformed to color space 2components, the uncompressed color space 1 components (Z and Y) areinput into color space 1 to color space 2 transformer 106A from which asecond set of color space 2 components are generated. The correspondingcolor space 2 components generated from transformers 106A and 106B areinput into difference functions 110 and 112. The output of differencefunctions 110 and 112 are input into encoder 114 for data compression.As described above, the data compression may be via any known technique,however, differential JPEG compression is preferred. In differentialJPEG compression, difference data between the original component dataand encoder reconstructed inverse transformed component data is coded asa differential JPEG frame. For more information on JPEG, see InformationTechnology—Digital Compression and Coding of Continuous-Tone StillImages—Part 1: Requirements and Guidelines, ITU-T Recommendation T.81(1992) |ISO/IEC 10918-1:1993. Alternatively, anycompression/decompression technique capable of handling differences mayalso be employed, including proprietary techniques. Accordingly, theoutput of encoder 114 is input into output function 116 forincorporation into a final color space 1 and 2 compressed data stream.The output of encoder 114 represents the loss or error introduced by thelossy compression/reconstruction of color space 1 components in terms ofcolor space 2 difference data.

[0030] The compressed data, both color space 1 and difference colorspace 2 data, can now be exported to a file or other device, such as aprinter, for processing. By knowing the error introduced by the lossycompression and reconstruction of the color space 1 multi-spectralimage, a correction based on the color space 2 difference data can beused during the subsequent decompression and transformation ofcompressed color space 2 data to provide a less-lossy or losslesscompression and decompression process. This is especially desirable whenthe decompressed multi-spectral image is desired to be defined by colorspace 2 components.

[0031] Second Illustrated Embodiment:

[0032] Three Color Spaces; Two Color Space Transformations.

[0033] Referring now to FIG. 2, a data flow block diagram illustratingthe functions necessary to compress a multi-spectral image defined by asingle color space into compressed image data representing two colorspaces and accomplished with two color space transformations. Moreparticularly, color space 1 components (A and B) are input into a colorspace 1 to color space 2 transformer 202B. For example, color space 1 tocolor space 2 transformer 202B may transform RGB color space componentsinto CIE L* a* b* color space components. The color space 2 componentsare input into encoder 102 for compression. The encoder 102 outputscompressed color space 2 data to two paths. One path of compressed colorspace 2 data is input into output function 116 for incorporation intothe final color space 2 and 3 compressed data stream. A second path ofcompressed color space 2 data is input into a decoder 104 to generatereconstructed color space 2 components (Z′ and Y′). Since thecompression/reconstruction performed by encoder 102 and decoder 104 islossy, the reconstructed color space 2 components (Z′ and Y′ ) are notidentical to the originally compressed color space 2 components (Z andY).

[0034] The reconstructed color space 2 components (Z′ and Y′) are outputfrom decoder 104 and input into color space 2 to color space 3transformer 204B to generate a first set of color space 3 components.Color space 3 may be CMYK color space, or any other color space. Theoutput of color space 2 to color space 3 transformer 204B includes theoutput of each component of color space 3 that is generated from thereconstructed color space 2 components (Z′ and Y′). As described above,only two components are shown for clarity.

[0035] The color space 1 components (A and B) are further input intocolor space 1 to color space 3 transformer 206. The output transformer202A includes all of the components of color space 2 and are input intocolor space 2 to color space 3 transformer 204A. The corresponding colorspace 3 components generated from transformers 204A and 204B are inputinto difference functions 110 and 112. The output of differencefunctions 110 and 112 are input into encoder 114 for data compression.The output of encoder 114 is input into output function 116 forincorporation into a final color space 2 and 3 compressed data stream.The output of encoder 114 represents the loss or error introduced by thelossy compression/reconstruction of color space 2 components in terms ofcolor space 3 difference data.

[0036] Similar to the embodiment of FIG. 1, the errors due to the lossycompression and reconstruction of the color space 2 multi-spectralimage, and possibly also the color space transformation from color space2 to color space 3, can be corrected by the differential color space 3data upon the subsequent decompression and transformation of thecompressed color space 2 data to produce a less-lossy or losslesscompression and decompression process. This is especially desirable whenthe decompressed, multi-spectral image is desired to be ultimatelydefined by color space 3 components.

[0037] Third Illustrated Embodiment:

[0038] Two Color Spaces; One Color Space Transformation.

[0039] Illustrated in FIG. 3 is a data flow block diagram illustratingthe functions necessary to compress a multi-spectral image defined by asingle color space into compressed image data representing two colorspaces and accomplished with one color space transformation and itsinverse. Specifically, color space 1 components (A and B) are input intocolor space 1 to color space 2 transformer 302 to generate color space 2components (Z and Y). The color space 2 components are input intoencoder 102 for compression. The encoder 102 outputs compressed colorspace 2 data to two paths. One path of compressed color space 2 data isinput into output function 116 for incorporation into the final colorspace 2 and 1 compressed data stream. A second path of compressed colorspace 2 data is input into a decoder 104 to generate reconstructed colorspace 2 component data. In as much as the compression/reconstructionperformed by encoder 102 and decoder 104 is lossy, reconstructed colorspace 2 components (Z′ and Y′) are not identical to the originallycompressed color space 2 components (Z and Y).

[0040] The reconstructed color space 2 components are output fromdecoder 104 and input into color space 2 to color space 1 transformer304 to generate a new set of color space 1 components. The new colorspace 1 components are input into difference functions 110 and 112.Additionally, the original color space 1 components are correspondinglyalso input into difference functions 110 and 112 to generate color space1 difference data. The output of difference functions 110 and 112 areinput into encoder 114 for data compression. As described above, thedata compression may be via any known technique, however, differentialJPEG compression is preferred. Accordingly, the output of encoder 114 isinput into output function 116 for incorporation into a final colorspace 2 and 1 compressed data stream. The output of encoder 114represents the loss or error introduced by the lossy transformation ofcolor space 1 into color space 2 and back to color space 1 and the lossycompression/decompression of color space 2 components.

[0041] In all of the embodiments, decompression of the compressed imagedata is accomplished by first separating each color space from the mixedcolor space compressed data stream output by output function 116. Eachcompressed color space is then reconstructed via the technique employedduring compression (e.g., JPEG baseline and differential JPEG).Thereafter, each component of the reconstructed color spaces will beavailable for further processing.

[0042] It should be further noted that the present invention isapplicable to the acquisition, compression, and decompression ofsatellite imagery. More particularly, satellites acquire images with aplurality of scanners having a plurality of scan frequencies. Thesefrequencies include the visible spectrum and the non-visible spectrum,such as the ultraviolet, infrared, and radio frequency spectrums.Consequently, satellite images are typically comprised of spectralspaces having more than two components. Each spectral space component ofa satellite image is traditionally referred to as a “band.” Landsat 5images, for example, are defined by a spectral space having seven bands.According, the present invention may be employed to generate a customcolor space which mixes, or de-correlates, the original color spacebands and which is more compressible than the original color space. Thecustom color space does not have to have the same number of bands as theoriginal color space. Reconstruction and transformation back to theoriginal color space provides for the determination of difference databetween the original color space and the reconstructed and transformedoriginal color space. The compressed custom color space components andthe compressed difference data, defined in terms of the original colorspace components, can then be assembled into a compressed data stream.Alternatively, bounded-loss transformations to a custom color space thatis more compressible than the original color space may be employed.

[0043] Compression of Multi-Spectral Images with Bounded Loss.

[0044] It has been determined by the present inventors that thecompression and decompression of multi-spectral images can be performedwith bounded losses. To recall, color space transformation from onecolor space to another color space can be lossy. The present inventionprovides a technique for performing bounded-loss transformations bydesigning transformations such that the loss incurred is within a knownrange. An important characteristic in the design of the bounded-losstransformations of the present invention is noise-level present in theimage. Noise is introduced into the image through the process ofdigitizing an analog image. Specifically, noise is introduced during thedigitizing round-off process which results in the necessary integerprecision color space components. Accordingly, a transformation designedwith a bounded loss equal to or less than the image noise-level will notsignificantly degrade the image quality. Additionally, because the lossor error is bound, it may be corrected for upon reconstruction of thecompressed color space data (e.g., color space 1) and transformation ofthe reconstructed color space data (e.g., color space 1) to the colorspace of the reconstructed difference data (e.g., color space 2). Thepresent discussion will now discuss the bounded-loss transformations ofthe present invention for the three most widely employed color spaces(i.e., RGB, CMY, and YCbCr) and the transformations: (1) RGB color spaceto Y′Cb′Cr′ color space and Y′Cb′Cr′ color space back to RGB color spaceand (2) RGB color space to C′M′Y′ color space and C′M′Y′ color spaceback to RGB color space.

[0045] Referring now to FIGS. 4 and 5, bounded-loss color transformersfor two color spaces are shown which bound the loss to ±1 (where 1 is,for example, the noise-level of an image). More particularly, an RGBcolor space to Y′Cb′Cr′ color space bounded-loss transformer 402 isillustrated in FIG. 4 and a Y′Cb′Cr′ color space to RGB color spacebounded-loss transformer 502 is shown in FIG. 5. In the embodiments, R,G, B, and Y′, Cb′, Cr′ are integer values from 0 to at most 255 for8-bit images. The notation Y′Cb′Cr′ denotes a non-conventionaltransform.

[0046] Referring now to FIG. 4 specifically, the inputs to transformer402 are the RGB color space components R, G, and B. The transformer 402applies the following formulas (1)-(4) to arrive at the Y′Cb′Cr′ colorspace components Y′, Cb′, and Cr′:

Y′=Round (aR+bG+cB)  (1)

Cb′=Round((B−Y′)/3+128)  (2)

Cr′=Round((R−Y′)/3+128)  (3)

where a+b+c=1  (4)

[0047] Referring now to FIG. 5 specifically, the inputs to transformer502 are the Y′Cb′Cr′ color space components Y′, Cb′, and Cr′. Thetransformer 502 applies the following formulas to arrive at the RGBcolor space components R1, G1, and B1:

R 1=(Cr*+Y′)  (5)

G 1=Round(Y′−((a/b)Cr*)−((c/b)Cb*))  (6)

B=(Cb*+Y)  (7)

[0048]  where:Cb*=3(Cb′−128)  (8)

Cr*=3(Cr′−128)  (9)

[0049] The term “Round” indicates a rounding operation to arrive at aninteger value.

[0050] It can be further determined that the application oftransformation formulas (1) - (9) for certain a, b, and c valuesprovides for transformations that yield losses which are less than orequal to 1 (i.e., the designed acceptable loss). The values of a, b, andc are chosen such that the loss introduced in the RGB components R and Bmust not yield a larger loss than desired in G. Though an exhaustivesearch for these values has not been performed, illustrated in Table 1are values which have been exhaustively tested and which satisfy theabove criteria. Accordingly, the values listed in Table 1 provide that|R−R1|≦1, |G−G1≦1, and |B−B1≦1. TABLE 1 (a, b, c) Range Y′ Range Cb′Range Cr′ (0.2, 0.7, 0.1) 0, 255 52, 204 60, 196 (0.25, 0.65, 0.1) 0,255 52, 204 64, 192 (0.28, 0.62, 0.1) 0, 255 51, 204 66, 190 (0.29,0.61, 0.1) 0, 255 51, 204 68, 188

[0051] Referring now to FIGS. 6 and 7, bounded-loss color transformersfor two color spaces (RGB to C′M′Y′ and C′M′Y′ to RGB) are shown whichbound the loss to ±1. More particularly, an RGB color space to C′M′Y′color space bounded-loss transformer 602 is illustrated in FIG. 6 and aC′M′Y′ color space to RGB color space bounded-loss transformer 702 isshown in FIG. 7. In the embodiments, R, G, B, and C′, M′, Y′ are integervalues from 0 to at most 255 for 8-bit images. The notation C′M′Y′denotes a non-conventional transform.

[0052] Referring now to FIG. 6 specifically, the inputs to transformer602 are the RGB color space components R, G, and B. The transformer 602applies the following formulas (10)-(12) to arrive at the C′M′Y′ colorspace components C′, M′, and Y′:

C′=Round((255−R)/3)  (10)

M′=Round((255−G)/3)  (11)

Y′=Round((255−B)/3)  (12)

[0053] Referring now to FIG. 7 specifically, the inputs to transformer702 are the C′M′Y′ color space components C′, M′, and Y′. Thetransformer 702 applies the following formulas to arrive at the RGBcolor space components R1, G1, and B1:

R 1=(255−3(C′))  (13)

G 1=(255−3(M′))  (14)

B 1=(255−3(Y′))  (15)

[0054] Just as in the case of the transformers of FIGS. 4 and 5, it hasbeen determined that the application of transformation formulas(10)-(15) provide transformation losses which are less than or equal to1 (i.e., the noise-level). Specifically, the differences between theoriginal RGB color space components and the reconstructed RGB colorspace components are such that |R−R1≦1, |G−G1|≦1, and |B−B1≦ 1.

[0055] A general approach to bounding the loss in an RGB to C′M′Y′ colorspace transform and a C′M′Y′ to RGB color space transform will now bepresented. Specifically, the bounded-loss RGB color space to C′M′Y′color space transformation is governed by the following equations(16)-(18):

C′=Round((255−R)/D)  (16)

M′=Round((255−G)/D)  (17)

Y′=Round((255−B)/D)  (18)

[0056] The bounded-loss C′M′Y′ color space to RGB color spacetransformation is governed by the following equations (19)-(21):

R 1=(255−D(C′))  (19)

G 1=(255−D(M′))  (20)

B 1=(255−D(Y′))  (21)

[0057] In equations (16-21), the variable D is represented by equation(22):

D=2(E)+1  (22)

[0058] where the variable E is the loss or error by which thetransformation shall be bound. The application of equations (16)-(22)results in the differences between the original RGB color spacecomponents and the reconstructed RGB color space components being|R−R1≦E, |G−G1≦E, and |B−B1≦E.

[0059] Illustrated in FIG. 8 is C′M′Y′ color space to traditional CMYcolor space transformer 802. The transformer 802 is governed by thefollowing equations:

C=3(C′)  (23)

M=3(M′)  (24)

Y=3(Y′)  (25)

[0060] A lossless compression of the C′M′Y′ components results in atmost a ±1 error after the transformation to CMY color space. If theC′M′Y′ components are compressed with bounded error, the error boundsare added.

[0061] Referring now to FIG. 9, a block diagram of acompression/decompression system incorporating color spacetransformations with bounded losses is shown. Specifically, the systemincludes color space 1 to color space 2 transformer 902, encoder 904,decoder 906, and color space 2 to color space 1 transformer 908.Bounded-loss color space transformers 902 and 908 may be anybounded-loss color space transformer created according to the presentinvention, such as the transformers of FIGS. 4 and 5 or FIGS. 6 and 7.The encoder 904 and decoder 906 are preferably JPEG baseline encodersand decoders. Alternatively, they may be created according to any knowncompression/decompression technique which is capable of handling colorspace component data.

[0062] The system of FIG. 9 operates by inputting color space 1components (e.g., A and B) into color space 1 to color space 2transformer 902. Color space 1 to color space 2 transformer 902generates color space 2 components (e.g., Z and Y) which are input intoencoder 904. Encoder 904 generates a compressed data stream which isultimately input into decoder 906 to generate reconstructed color space2 components (e.g., Z′ and Y′). The reconstructed color space 2components (e.g., Z′ and Y′) are input into and color space 2 to colorspace 1 transformer 908 to generate color space 1 components (e.g., A′and B′). The difference between the reverse transformed color space 1components (e.g., A′ and B′) and the original color space 1 components(e.g., A and B) is accordingly bounded by the loss due to the colorspace transformers 902 and 906 and any loss from thecompression/decompression by encoder 904 and decoder 906.

[0063] Referring now back to FIGS. 1, 2, and 3, the present inventionfurther provides that transformers 106A,B and 202A,B and 204A,B and 206and 302 and 304 may be bounded-loss transformers and that encoders 102and 114 and decoder 104 may be employing a lossless compressiontechnique. In this configuration, difference values are determined fromthe bounded-loss transformations, while a lossless compression techniqueis employed. Other combinations are also possible.

[0064] The embodiments of the present invention may be implemented assoftware or hardware logic in a general personal or specific purposecomputer system. The computer system may be a desktop, floor standing,or portable microcomputer that is comprised of a system unit having acentral processing unit (CPU) and associated volatile and non-volatilememory, including all RAM and BIOS ROM, a system monitor, a keyboard,one or more flexible diskette drives, a fixed disk storage drive (alsoknown as a “hard drive”), CD-ROM drive, a “mouse” pointing device, andan optional printer. The computer system may further include modem ornetwork connection devices which allow it to communicate with hostcomputer systems. Examples of such personal computer systems includeIBM's APTIVA® and THINKPAD® computer systems.

[0065] As mentioned, these computer systems may employ the presentinvention as software or hardware logic. The software logic includescode written to be executed by the computer system's central processoror other processor, such as an on-board or board added DSP (DigitalSignal Processor) and/or micro-controller. The code may be stored on acomputer-readable medium such as a floppy disk or CD-ROM. Hardware logicembodiments include the present invention embodied in the form of anASIC (Application Specific Integrated Circuit), combination of ASIC'S,and/or a programmed micro-controller. The code may further be embodiedin a PROM or EEPROM which is readable by a computer system, processor,or controller.

[0066] While the present invention has been illustrated by thedescription of embodiments thereof, and while the embodiments have beendescribed in considerable detail, it is not the intent of the applicantsto restrict or in any way limit the scope of the appended claims to suchdetail. Additional advantages and modifications will readily appear tothose skilled in the art. For example, other bounded-loss colortransformations may be derived via the teachings of the presentinvention. Therefore, the invention, in its broader aspects, is notlimited to the specific details, the representative apparatus, andillustrative examples shown and described. Accordingly, departures maybe made from such details without departing from the spirit or scope ofthe applicant's general inventive concept.

We claim:
 1. A computer-implemented method for compressing a digitalmulti-spectral image represented by a first color space, the methodcomprising the steps of: (a) transforming a first set of first colorspace components to a plurality of second color space components; (b)compressing the second color space components; and (c) reconstructingand transforming the compressed second color space components into asecond set of first color space components such that the differencebetween each of the first set of first color space components and thesecond set of first color space components is bound by a predeterminedrange of values.
 2. The method of claim 1 further comprising the step ofdetermining a noise-level within an image and wherein predeterminedrange of values is based on the determined noise-level.
 3. The method ofclaim 1 wherein the step of transforming a first set of first colorspace components to a second color space comprises the step of inputtingthe first set of first color space components into a first transformerhaving the following transformation equations embedded therein:Y′=Round(aR+bG+cB) Cb′=Round((B−Y′)/3+128) Cr′Round((R−Y′)/3+128) andwherein the first color space comprises an RGB color space and thesecond color space comprises an Y′Cb′Cr′ color space.
 4. The method ofclaim 3 wherein the step of reconstructing and transforming thecompressed second color space components into a second set of firstcolor space components such that the difference between each of thefirst set of first color space components and the second set of firstcolor space components is bound by a predetermined range of valuescomprises the step of inputting the second color space components into asecond transformer having the following transformation equationsembedded therein: R 1=(Cr*+Y′) G 1=Round(Y′−((a/b)Cr*)−((c/b)Cb*)) B1=(Cb*+Y′) where: Cb*=3(Cb′−128) Cr*=3(Cr′−128) and wherein the firstcolor space comprises an RGB color space and the second color spacecomprises an Y′Cb′Cr′ color space.
 5. The method of claim 1 wherein thestep of transforming a first set of first color space components to asecond color space comprises the step of inputting the first set offirst color space components into a first transformer having thefollowing transformation equations embedded therein: C′=Round((255−R)/D)M′=Round((255−G)/D) Y′=Round((255−B)/D) and D=2 (E)+1, wherein E is thedesired loss and wherein the first color space comprises an RGB colorspace and the second color space comprises a C′M′Y′ color space.
 6. Themethod of claim 5 wherein the step of reconstructing and transformingthe compressed second color space components into a second set of firstcolor space components such that the difference between each of thefirst set of first color space components and the second set of firstcolor space components is bound by a predetermined range of valuescomprises the step of inputting the second color space components into asecond transformer having the following transformation equationsembedded therein: R 1=(255−D(C′)) G 1=(255−D(M′)) B 1=(255−D(Y′)) andD=2 (E)+1, wherein E is the desired loss and wherein the first colorspace comprises an RGB color space and the second color space comprisesan C′M′Y′ color space.
 7. The method of claim 5 wherein E is equal toone.
 8. The method of claim 6 wherein E is equal to one.
 9. The methodof claim 1 wherein the step of compressing the second color spacecomponents comprises the step of compressing via a JPEG standard.